package br.unifor.cmi.ha.jgcs;


public interface JGCSReplicationManagerImplMBean {
    /**
     * @return the name of this bean
     */
    String getName();

    /**
     * @return Object Name
     */
    String getobjectName();

    /**
     * Get the number of replicated messages sent.
     * @return the number of replicated messages
     */
    long getnumberofReplicatedMessages();

    /**
     * Get the average size of the replicated messages sent.
     * @return the number of replicated messages
     */
    double getavgSizeofReplicatedMessages();

    /**
     * Get the total size of the replicated messages sent.
     * @return the total size of the replicated messages
     */
    double gettotSizeofReplicatedMessages();

    /**
     * Get the Jgcs configuration file name.
     * @return the JGCS configuration file name
     */
    String getjgcsProperties();

    /**
     * Get the SFSB info timeout to clean certain information stored in memory.
     * @return the timeout that
     */
    long getinfoTimeout();

    /**
     * Set the SFSB info timeout. The info stored in the node is removed when
     * the timer expires.
     * @param timeout the timeout to clean the info
     */
    void setinfoTimeout(long timeout);

    /**
     * Get the Datasource name required to hold the EB version numbers of the
     * horizontal replication approach.
     * @return the Datasource name
     */
    String getdatasourceName();

    /**
     * Set the Datasource name required to hold the EB version numbers of the
     * horizontal replication approach.
     * @param name the name of the datasource
     */
    void setdatasourceName(String name);
}
